#ifndef FIBONACCI_HPP
#define FIBONACCI_HPP

template <int N>
class Fibonacci {
public:
	enum { value = Fibonacci<N-1>::value + Fibonacci<N-2>::value };
};

template<>
class Fibonacci<0>
{
public:
	enum { value = 0 };
};

template<>
class Fibonacci<1>
{
public:
	enum { value = 1 };
};

#endif